Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Java Metadata Interface</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Java_Metadata_Interface"> <link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Java_Metadata_Interface rootpage-Java_Metadata_Interface skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Java Metadata Interface</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p>Given that <a href="Metadata_(computing)" class="mw-redirect" title="Metadata (computing)">metadata</a> is a set of descriptive, structural and administrative <a href="Data" title="Data">data</a> about a group of <a href="Computer" title="Computer">computer</a> data (for example such as a <a href="Database_schema" title="Database schema">database schema</a>), <b>Java Metadata Interface</b> (or <b>JMI</b>) is a platform-neutral specification that defines the creation, storage, access, lookup and exchange of metadata in the <a href="Java_(programming_language)" title="Java (programming language)">Java programming language</a>.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="History">History</h2></div>
<p>The JMI specification was developed under the <a href="Java_Community_Process" title="Java Community Process">Java Community Process</a> and is defined by <a href="Java_Specification_Request" class="mw-redirect" title="Java Specification Request">JSR</a> 40 (a JSR is the formal document that describe proposed specifications and technologies for adding to the <a href="Java_platform" class="mw-redirect" title="Java platform">Java platform</a>).
</p><p>JMI is based on the <a href="Meta-Object_Facility" title="Meta-Object Facility">Meta-Object Facility</a> (or MOF) specification from the <a href="Object_Management_Group" title="Object Management Group">Object Management Group</a> (or OMG). The MOF is a <a href="Metamodeling" title="Metamodeling">metamodel</a> (a <a href="Computer_model" class="mw-redirect" title="Computer model">model</a> of any kind of metadata) used notably to define the <a href="Unified_Modeling_Language" title="Unified Modeling Language">Unified Modeling Language</a> (or UML).
</p><p>It supports the exchange of metadata through <a href="XML_Metadata_Interchange" title="XML Metadata Interchange">XMI</a>. XMI is a standard for exchanging metadata information via <a href="Extensible_Markup_Language" class="mw-redirect" title="Extensible Markup Language">Extensible Markup Language</a> (or XML). The MOF/XMI specifications are used for the exchange of UML models.
</p>
<div class="mw-heading mw-heading2"><h2 id="Usage">Usage</h2></div>
<p>Essentially, JMI can be used to write tools in Java for manipulating UML models, which can be used in <a href="Model_Driven_Architecture" class="mw-redirect" title="Model Driven Architecture">Model Driven Architecture</a> and/or <a href="Model-driven_engineering" title="Model-driven engineering">Model Driven Development</a>. There are many implementations of JMI, including the Reference Implementation from <a href="Unisys" title="Unisys">Unisys</a>, <a href="SAP_NetWeaver" title="SAP NetWeaver">SAP NetWeaver</a> and <a href="Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a>'s open-source implementation from the <a href="NetBeans" title="NetBeans">NetBeans</a> group. JMI is compatible with <a href="Java_SE" class="mw-redirect" title="Java SE">Java SE</a> 1.3 and above through:
</p>
<ul><li>Standardized mappings from the MOF modeling constructs to Java;</li>
<li>Reflective APIs for generic discovery and navigation of metadata models and instances.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1266661725">
/* start https://en.wikipedia.org/ */


.mw-parser-output .portalbox{padding:0;margin:0.5em 0;display:table;box-sizing:border-box;max-width:175px;list-style:none}.mw-parser-output .portalborder{border:1px solid var(--border-color-base,#a2a9b1);padding:0.1em;background:var(--background-color-neutral-subtle,#f8f9fa)}.mw-parser-output .portalbox-entry{display:table-row;font-size:85%;line-height:110%;height:1.9em;font-style:italic;font-weight:bold}.mw-parser-output .portalbox-image{display:table-cell;padding:0.2em;vertical-align:middle;text-align:center}.mw-parser-output .portalbox-link{display:table-cell;padding:0.2em 0.2em 0.2em 0.3em;vertical-align:middle}@media(min-width:720px){.mw-parser-output .portalleft{margin:0.5em 1em 0.5em 0}.mw-parser-output .portalright{clear:right;float:right;margin:0.5em 0 0.5em 1em}}


/* end https://en.wikipedia.org/ */
</style>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><a rel="nofollow" class="external text" href="http://www.jcp.org/en/jsr/detail?id=40">JSR 40</a></li></ul>
<p><br>
</p>
<style data-mw-deduplicate="TemplateStyles:r1271159938">
/* start https://en.wikipedia.org/ */


.mw-parser-output .asbox{position:relative;overflow:hidden}.mw-parser-output .asbox table{background:transparent}.mw-parser-output .asbox p{margin:0}.mw-parser-output .asbox p+p{margin-top:0.25em}.mw-parser-output .asbox-body{font-style:italic}.mw-parser-output .asbox-note{font-size:smaller}.mw-parser-output .asbox .navbar{position:absolute;top:-0.75em;right:1em;display:none}.mw-parser-output :not(p):not(.asbox)+style+.asbox,.mw-parser-output :not(p):not(.asbox)+link+.asbox{margin-top:3em}


/* end https://en.wikipedia.org/ */
</style></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2023-05-15" href="https://en.wikipedia.org/wiki/?title=Java_Metadata_Interface&amp;oldid=1154962921">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>